package com.wcs.exam.controller.admin.req;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.io.Serial;
import java.io.Serializable;

/**
 * <p>
 * Admin-标签信息-保存请求参数
 * </p>
 *
 * @author wcs
 * @since 2025-03-17
 */
@Getter
@Setter
@Accessors(chain = true)
@Schema(description = "Admin-标签信息-保存请求参数")
public class AdminTagSaveReq implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @Size(min = 1, max = 30, message = "标签名称长度必须不能超过30个字符")
    @NotBlank(message = "标签名称不能为空")
    @Schema(description = "标签名称", requiredMode = Schema.RequiredMode.REQUIRED)
    private String tagName;

    @NotNull(message = "标签类型(参考枚举)不能为空")
    @Schema(description = "标签类型(参考枚举)", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer tagType;
}
